﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Text.RegularExpressions;

/// <summary>
/// Classe com rotinas de e-mail.
/// </summary>
public class Email
{
	public Email()
	{
		//
		// TODO: Add constructor logic here
		//
	}
    /// <summary>Cria um modelo de e-mail padrão para reiniciar senha do Synergia.</summary>
    /// <param name="modulo">Modulo do Synergia(Administrativo, Comercial).</param>
    /// <param name="ceee">CEEED ou CEEEGT.</param>
    /// <param name="nomecompleto">nome completo do solicitante.</param>
    /// <param name="re">RE do solicitante.</param>
    /// <returns>Modelo de email para reiniciar senha do Synergia.</returns>
    public string ModeloEmailSynergia(string modulo, string ceee, string nomecompleto, string re)
    {
        string email = Saudacao() + "<br>" +
            "Solicito reiniciar a minha senha do SYNERGIA "+modulo+"da"+ceee+
            "<br>"+
            "Nome: "+nomecompleto+
            "<br>"+
            "RE:"+re;
        return email;
    }
    /// <summary>Cria um modelo de e-mail padrão para reiniciar senha de Rede.</summary>
    /// <param name="nomecompleto">nome completo do solicitante.</param>
    /// <param name="re">RE do solicitante.</param>
    /// <returns>Modelo de email para reiniciar senha de Rede.</returns>
    public string ModeloEmailRede(string nomecompleto, string re)
    {
        string email = Saudacao() + "<br>" +
            "Solicito reiniciar a senha de Rede do colega "+nomecompleto+
            "<br>" +
            "RE:" + re;
        return email;
    }
    /// <summary>Cria uma saudação de acordo com a hora do servidor, Bom dia, Boa tarde, Boa noite.</summary>
    /// <returns>Saudação criada.</returns>
    private string Saudacao()
    {
        int hora = Convert.ToInt16(DateTime.Now.Hour);
        string saudacao;
        if (hora >= 6 && hora <= 12)
            saudacao = "Bom dia";
        else
        {
            if (hora >= 13 && hora <= 19)
                saudacao = "Boa tarde";
            else
                saudacao = "Boa Noite";
        }
        return saudacao;
    }
    /// <summary>
    /// Valida email, os e-mails devem ter o formato eeee@eeee.eeee.
    /// </summary>
    /// <param name="email">Email no formato descrito acima.</param>
    /// <returns>Boolean true para e-mail válido.</returns>
    public bool ValidarEmail(string email)
    {
        email.Trim();
        //validando e-mail com expressoes regulares
        string strRegex = @"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}" +
         @"\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\" +
         @".)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
        Regex rg = new Regex(strRegex);
        return (rg.IsMatch(email));
    }
}